'\" t
.TH "SYSTEMD\-UPDATE\-DONE\&.SERVICE" "8" "" "systemd 254" "systemd-update-done.service"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
systemd-update-done.service, systemd-update-done \- Mark /etc/ and /var/ fully updated
.SH "SYNOPSIS"
.PP
systemd\-update\-done\&.service
.PP
/lib/systemd/systemd\-update\-done
.SH "DESCRIPTION"
.PP
systemd\-update\-done\&.service
is a service that is invoked as part of the first boot after the vendor operating system resources in
/usr/
have been updated\&. This is useful to implement offline updates of
/usr/
which might require updates to
/etc/
or
/var/
on the following boot\&.
.PP
systemd\-update\-done\&.service
updates the file modification time (mtime) of the stamp files
/etc/\&.updated
and
/var/\&.updated
to the modification time of the
/usr/
directory, unless the stamp files are already newer\&.
.PP
Services that shall run after offline upgrades of
/usr/
should order themselves before
systemd\-update\-done\&.service, and use the
\fIConditionNeedsUpdate=\fR
(see
\fBsystemd.unit\fR(5)) condition to make sure to run when
/etc/
or
/var/
are older than
/usr/
according to the modification times of the files described above\&. This requires that updates to
/usr/
are always followed by an update of the modification time of
/usr/, for example by invoking
\fBtouch\fR(1)
on it\&.
.PP
Note that if the
\fIsystemd\&.condition\-needs\-update=\fR
kernel command line option is used it overrides the
\fIConditionNeedsUpdate=\fR
unit condition checks\&. In that case
systemd\-update\-done\&.service
will not reset the condition state until a follow\-up reboot where the kernel switch is not specified anymore\&.
.SH "SEE ALSO"
.PP
\fBsystemd\fR(1),
\fBsystemd.unit\fR(5),
\fBtouch\fR(1)
